/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.capex.farmacus.encapsulates;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 *
 * @author IK
 */
@Embeddable
public class VisitadoresmedicosPK implements Serializable {
    @Basic(optional = false)
    @Column(name = "visitador")
    private int visitador;
    @Basic(optional = false)
    @Column(name = "medico")
    private int medico;
    @Basic(optional = false)
    @Column(name = "fechaVisitacion")
    @Temporal(TemporalType.DATE)
    private Date fechaVisitacion;

    public VisitadoresmedicosPK() {
    }

    public VisitadoresmedicosPK(int visitador, int medico, Date fechaVisitacion) {
        this.visitador = visitador;
        this.medico = medico;
        this.fechaVisitacion = fechaVisitacion;
    }

    public int getVisitador() {
        return visitador;
    }

    public void setVisitador(int visitador) {
        this.visitador = visitador;
    }

    public int getMedico() {
        return medico;
    }

    public void setMedico(int medico) {
        this.medico = medico;
    }

    public Date getFechaVisitacion() {
        return fechaVisitacion;
    }

    public void setFechaVisitacion(Date fechaVisitacion) {
        this.fechaVisitacion = fechaVisitacion;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (int) visitador;
        hash += (int) medico;
        hash += (fechaVisitacion != null ? fechaVisitacion.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof VisitadoresmedicosPK)) {
            return false;
        }
        VisitadoresmedicosPK other = (VisitadoresmedicosPK) object;
        if (this.visitador != other.visitador) {
            return false;
        }
        if (this.medico != other.medico) {
            return false;
        }
        if ((this.fechaVisitacion == null && other.fechaVisitacion != null) || (this.fechaVisitacion != null && !this.fechaVisitacion.equals(other.fechaVisitacion))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "edu.capex.farmacus.encapsulates.VisitadoresmedicosPK[ visitador=" + visitador + ", medico=" + medico + ", fechaVisitacion=" + fechaVisitacion + " ]";
    }
    
}
